技術問答
技術文章
iT 徵才
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
DAY
2
0
Odoo
Odoo 魔法學院: 一步一腳印帶你成為客製化大師
系列 第
2
篇
[Day02] 進入開發之前的小知識
15th鐵人賽
odoo
odoo15
erp
阿寬 | Odoo Community Taiwan
2023-09-17 23:45:57
777 瀏覽
分享至
Odoo
是由 Odoo SA 公司發行的,是家比利時公司
Odoo 雖然是 Open Source,但開發藍圖是由 Odoo SA 規劃及主導
Odoo 的商業模式是由 80% Open Source 20% 由 Odoo SA 所有
其衍伸出 Odoo Community Edition (CE) 和 Enterprise Edition (EE)
而 EE 其實就是 CE 加上額外的模組,並且附贈其他服務
秉持 80% CE 20% EE 為目標,讓 Odoo 持續能以 Open Source 之姿進化
Odoo App
Odoo SA 會支援且持續維護最近的三個版本,以現在為例 Odoo 14, 15, 16 有發生任何資安疑慮,Odoo SA 會進行修復並發布,但 Odoo 13 就們不具續進行維護了
版本
在 Github 上的 branch 可選擇 16.0, 15.0, 14.0 來選用,都是穩定版本
在穩定版本中,Odoo SA 會保持 API 的一致性,儘管未來有更新也不會做更動
所以這對我們開發客製化模組時,不必擔心 Odoo 完成資安更新後有 API 不相容的問題
master 分支則是下一個版本的開發版,盡量別在 master 上開發,有可能發行後會被修改,並且 API 形式也還沒確定
Odoo 不同版本的資料庫互不相容,所以如果要升級版本的話,需要花額外的力氣,而 Odoo SA 有提供協助升級的服務
由於 Odoo 的 Addon Module 跟資料庫密切關相關,所以跟不同版本的 Odoo 也是互不相容的
架構
Odoo 由三層架構組成,分別是 Data, Logic, Presentation Tier:
Data tier
資料的操作及儲存都在這一層
透過 PostgreSQL 來儲存,並且唯一使用 PostgreSQL,目前無法替換
都是使用 Odoo Object-reloational mapping (Odoo ORM) 來操作資料庫,實作了 CRUD create(), search(), write(), unlink() 等方法,並且能設定資料存取權限的功能
Odoo 中的附件和圖片等檔案被儲存在
filestore
資料夾下
所以,備份時除了資料庫以外,也要將 filestore 給一併複製
Logic tier
負責跟 Data tier 互動
這邊能寫 Python 實現商業流程,原理是透過 CRUD 方法對資料進行操作,能做到自動化、驗證、預設值和欄位植入進算公式 ... 等
Presentation tier
展示資料,並和使用者互動
透過 Remote Procedure Call (RPM) 來驅動 ORM 實現商業流程
留言
追蹤
檢舉
上一篇
[Day01] 關於這系列的文章
下一篇
[Day03] 開始第一個專案 (這麼快就來了嘛!?)
系列文
Odoo 魔法學院: 一步一腳印帶你成為客製化大師
共
30
篇
目錄
RSS系列文
訂閱系列文
7
人訂閱
26
[Day26] 管理工作表的Kanban View+搜尋特定選項的Search View
27
[Day27] 使用QWeb 指令對Kanban View進行更改
28
[Day28] 客製化 PDF 輸出
29
[Day29] 設計圖書館使用者前端會員功能
30
[Day30] 文章回顧,以及誰會需要客製化呢 !?
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19845
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
EPSON LQ-690C 印表機中一刀跑版
[Javascript] 非同步執行,如何延緩後面程式的處理 ??
AARQ 通訊協議是?
印表機設定 - Epson 690c
FortiGate SSLVPN替代方案?
Dell or Asus 伺服器,哪牌比較好?
Dell or Asus Storage 或NAS,哪牌比較好?
將硬碟上的 EFI 分割區複製到固態硬碟後,ARM 架構的 Ubuntu Server 無法啟動
sdray vigor2927 sslvpn ip設定問題
iT邦幫忙如何搜尋 關鍵字?
熱門回答
FortiGate SSLVPN替代方案?
EPSON LQ-690C 印表機中一刀跑版
[Javascript] 非同步執行,如何延緩後面程式的處理 ??
印表機設定 - Epson 690c
Dell or Asus 伺服器,哪牌比較好?
熱門文章
台灣職場必學的Excel函數技巧
c++的.h和cpp,放在相同目錄下好,還是頂層就用include,src分開好? [搬運/問答]
什麼是四大報表及其組成?完整解析
VScode 開發應用系統專案(8-1) - Spring Boot Security 設定與認證前置準備
VScode 開發應用系統專案(8-3) - Spring Boot Security 客製化多元登入認證
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}